import java.io.IOException;
import java.net.*;

/**
 * @作者: xiaoxun
 * @日期: 2025/3/14 11:03
 * @描述: 网络编程
 */
public class NetWorkProgramming {
	public static void main(String[] args) throws IOException {
		/**
		 * 网络编程
		 * 	基本的通信架构：CS（客户端与服务端）、BS（浏览器与服务端）
		 * 	网络通信的三要素：IP、端口、协议
		 * 	*/
		InetAddress ip=InetAddress.getLocalHost();
		System.out.println(ip);
		InetAddress ip2=InetAddress.getByName("xiaoxuna.com");
		System.out.println(ip2.getHostAddress());
		System.out.println(ip2.getHostName());

		//UDP通信
		//1、创建发送端对象
		DatagramSocket spcket=new DatagramSocket();//默认会分配端口
		//2、创建数据包对象，负责封装发送的数据
		/**
		 * 参数一：要发送的数据
		 * 参数二：发送的数据大小
		 * 参数三：目的IP地址
		 * 参数四：接收端口号*/
		byte[] buffter="今晚一起吃饭，喝啤酒".getBytes();
		DatagramPacket packet=new DatagramPacket(buffter,buffter.length,InetAddress.getLocalHost(),8888);
		//3、发送数据包
		spcket.send(packet);
		spcket.close();//关闭管道
		System.out.println("发送成功！");

	}
}
